/* halt.c
 *	Simple program to test whether running a user program works.
 *	
 *	Just do a "syscall" that shuts down the OS.
 *
 * 	NOTE: for some reason, user programs with global data structures 
 *	sometimes haven't worked in the Nachos environment.  So be careful
 *	out there!  One option is to allocate data structures as 
 * 	automatics within a procedure, but if you do this, you have to
 *	be careful to allocate a big enough stack to hold the automatics!
 */

#include "syscall.h"


void forkedFunc2 (void) {

	Write( "\n#### fork2###\n\0" , 15, ConsoleOutput );
	Exec ("../test/sort") ;
	Exit (41);
}

void forkedFunc (void) {

	Write( "\n#### fork1###\n\0" , 15, ConsoleOutput );
	Exec ("../test/matmult") ;
	Exit (4);
}

void main()
{
    Fork ((void*)forkedFunc) ;
	Fork ((void*)forkedFunc2) ;
    Exit(45) ;
}
